'''
直接定义在类中的属性，叫类属性，是所有对象共享的属性
实例化属性：目的是为了保证每个对象的独特性，定义在类中的__init__方法中 __init__是python内部方法
'''
class Student:
    school = "经开三校" # 类属性：可以被所有对象共享 可以通过对象访问，可以通过类名方法

    # 实例化属性
    def __init__(self,name1,id): # self：代表一个对象,代表当前对象
        print("-------我是init方法 对象初始化工作--------")
        self.name= name1 # name1 参数名  name是Student类的实例属性
        self.id = id

    # 方法
    def study(self):
        print(f"学生{self.name}学习")

    def exercise(self,newname):
        print(f"锻炼")
        self.name= newname # 修改实例属性
        Student.school = "经发学校"
        self.eat()

    def eat(self):
        print(f"吃饭")


tom = Student("tom",2) # 创建对象时，会自动调用__init__方法
tom.name = "汤姆"
# 实例化属性，只能通过对象去访问
print(tom.name)

# 类属性，可以通过对象和类名访问
Student.school = "经开"
print(Student.school)
print(tom.school)
print("-------------")
tom.exercise("tomplus")
print(tom.school)
print(tom.name)
# tom.study()
#
# lily = Student("丽丽",3)
# lily.study()
